#ifndef DIRECTOR_H_
#define DIRECTOR_H_

#include "widget.h"

class DialogDirector
{
public:
	virtual void showDialog() = 0;
	virtual void changed(Widget*) = 0;

};

class EntryDialogDirector : public DialogDirector
{
public:
	EntryDialogDirector();
	~EntryDialogDirector();

public:
	void showDialog();
	void showDetail();
	void changed(Widget*);

private:
	void createWidgets();
	void destroyWidgets();

	// should be private here.
	// but use public to simulate event.
public:
	EntryWidget*	m_entry;
	ListWidget*		m_list;
	ButtonWidget*	m_ok;
	ButtonWidget*	m_cancel;
};


#endif // DIRECTOR_H_
